package edu.hrbeu.crc.service;

import com.baomidou.mybatisplus.extension.service.IService;
import edu.hrbeu.crc.pojo.dto.ShoppingListDTO;
import edu.hrbeu.crc.pojo.entity.ShoppingList;
import edu.hrbeu.crc.pojo.query.ShoppingListQuery;
import edu.hrbeu.crc.pojo.result.PageResult;
import edu.hrbeu.crc.pojo.vo.ShoppingListPageVO;
import edu.hrbeu.crc.pojo.vo.ShoppingListVO;

import java.util.List;

public interface ShoppingListService extends IService<ShoppingList> {
    /**
     * 清单创建
     * @param shoppingListDTO
     */
    void add(ShoppingListDTO shoppingListDTO);

    /**
     * 分页查询
     * @param shoppingListQuery
     * @return
     */
    PageResult<ShoppingListPageVO> queryShoppingList(ShoppingListQuery shoppingListQuery);

    /**
     * 根据id查询清单
     * @param id
     * @return
     */
    ShoppingListVO get(Integer id);

    /**
     * 修改清单
     * @param shoppingListDTO
     */
    void updateShoppingList(ShoppingListDTO shoppingListDTO);

    /**
     * 删除清单
     * @param ids
     */
    void delete(List<Integer> ids);

    /**
     * 更改清单状态
     * @param id
     */
    void upStatus(Integer id);
}
